#-------------------------------------------------
#
# Project created by QtCreator 2017-10-18T10:59:50
#
#-------------------------------------------------

QT += core gui
QT += qml quick     #QML和Quick
QT += sql           #数据库
QT += network       #网络
QT += multimedia    #多媒体
QT += sensors
QT += texttospeech  #文字转语音
QT += quickcontrols2    #使用风格
#QT += webkitwidgets
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

#QT += websockets \
#    xml svg \
#    bluetooth nfc \
#    positioning location \
#    3dcore 3dinput 3dquick 3drender



#C++11支持lamda表达式
QMAKE_CXXFLAGS += -std=c++0x    #支持lambda表达式
CONFIG += c++11                 #支持lambda表达式
#CONFIG += console               #将输出到控制台
#CONFIG -= app_bundle
#CONFIG -= qt                   #是否使用qt库

CONFIG += mobility
MOBILITY += sensors




CONFIG(debug, debug|release) {  #debug版本
#LIBS += -L../lib1 -lhellod
#LIBS += -L$$PWD/ -lxxx
#LIBS += -Lxxx -lyyy        #xxx是路径,yyy是lib/so名

#LIBS += -lwsock32


#RESOURCES += \
#    Res.qrc \
#    QML.qrc
}
else {          #release版本
#LIBS += -L../lib2 -lhello

#RESOURCES += \
#    Res.qrc \
#    QML.qrc

# 鹰：这是预编译宏定义
DEFINES += QT_MESSAGELOGCONTEXT #使Release版本输出的日志包含文件名、函数名和行数
# !!!鹰：注意，下面3个屏蔽qDebug、qWarning、qInfo时，同时也不会执行 !!!这行中的所有函数!!!
DEFINES+=QT_NO_DEBUG_OUTPUT    #屏蔽release版本中所有qDebug()提示信息
#DEFINES+=QT_NO_INFO_OUTPUT
#DEFINES+=QT_NO_WARNING_OUTPUT

#-W[no-]<警告选项>。例如代码：
QMAKE_CXXFLAGS += -Wno-unused-parameter #没有用到的参数变量
QMAKE_CXXFLAGS += -Wno-unused-variable  #没有用到的变量
QMAKE_CXXFLAGS += -Wunused-but-set-variable #没有用到的变量
QMAKE_CXXFLAGS += -Wno-sign-compare #忽略有符号比较?
#QMAKE_CXXFLAGS += -fpermissive

##前两行意思为在release版本中增加debug信息；第三行意思为release版本中去掉-s参数，这样就生成对应符号表，可以调试跟踪；
#QMAKE_CXXFLAGS_RELEASE += -g
#QMAKE_CFLAGS_RELEASE += -g
#QMAKE_LFLAGS_RELEASE = -mthreads #-Wl

##貌似Profile版本自带debug信息，但用的库都是release的
}


android {
    #QAndroidJniObject、QtAndroid 属于 androidextras 模块
    QT += androidextras

    #指定 安卓包路径(包含资源、assets、src、AndroidManifest.xml)
    ANDROID_PACKAGE_SOURCE_DIR = $$PWD/android

    contains(ANDROID_TARGET_ARCH,armeabi-v7a) {
        #ANDROID_EXTRA_LIBS不能写在这里，否则不会复制到apk
    }
    #ANDROID_EXTRA_LIBS = $$PWD/android/libs/libEnglishKill_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5WebView_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt53DQuickExtras_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt53DQuickAnimation_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt53DExtras_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt53DAnimation_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt53DQuickRender_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt53DQuickScene2D_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt53DQuickInput_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt53DRender_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt53DInput_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt53DQuick_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Location_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt53DLogic_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt53DCore_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5PositioningQuick_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Positioning_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5ScriptTools_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5DataVisualization_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Script_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Charts_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5QuickControls2_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5QuickTemplates2_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5TextToSpeech_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5WebChannel_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5RemoteObjects_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5XmlPatterns_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Bodymovin_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Scxml_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Help_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Bluetooth_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Nfc_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Purchasing_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5WebSockets_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Gamepad_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5MultimediaQuick_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5MultimediaWidgets_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Multimedia_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Sensors_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5QuickWidgets_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5QuickParticles_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5QuickTest_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5QuickShapes_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Quick_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5QmlWorkerScript_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5QmlModels_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Qml_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5SerialPort_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5NetworkAuth_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Svg_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5AndroidExtras_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5OpenGL_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5PrintSupport_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Test_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Widgets_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Gui_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Concurrent_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Network_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Sql_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Xml_armeabi-v7a.so $$PWD/../../../Programs/Programming/Qt/Qt/Qt5.14.2/5.14.2/android/lib/libQt5Core_armeabi-v7a.so

    #LIBS += -L$$PWD/android/libs -lEnglishKill_armeabi-v7a

    message("android: $$ANDROID_TARGET_ARCH")
    #message("ANDROID_EXTRA_LIBS: $$ANDROID_EXTRA_LIBS")
}






TARGET = Updater
TEMPLATE = app



#RC_ICONS = icon.ico


SOURCES += \
    _SRC/main.cpp \
    _SRC/Dialog.cpp \
    _SRC/Updater.cpp \
    _SRC/Loader.cpp \
    _SRC/_Global/GlobalClass.cpp \
    _SRC/_Global/HTTP/NetworkAccessManager.cpp \
    _SRC/_Global/HTTP/HTTPDownload.cpp \
    _SRC/_Global/HTTP/HTTPRequest.cpp

HEADERS += \
    _SRC/Dialog.h \
    _SRC/Updater.h \
    _SRC/Loader.h \
    _SRC/_Global/GlobalClass.h \
    _SRC/_Global/HTTP/NetworkAccessManager.h \
    _SRC/_Global/HTTP/HTTPDownload.h \
    _SRC/_Global/HTTP/HTTPRequest.h

RESOURCES += \
    #res.qrc

FORMS += \
    _SRC/Dialog.ui

DISTFILES += \
    android/AndroidManifest.xml \
    android/build.gradle \
    android/res/values/libs.xml \
    android/res/values/styles.xml \
    android/gradle/wrapper/gradle-wrapper.properties \
    android/gradle/wrapper/gradle-wrapper.jar \
    android/gradlew \
    android/gradlew.bat

OTHER_FILES += \


# Additional import path used to resolve QML modules in Qt Creator's code model
QML_IMPORT_PATH =

# Additional import path used to resolve QML modules just for Qt Quick Designer
QML_DESIGNER_IMPORT_PATH =

# The following define makes your compiler emit warnings if you use
# any feature of Qt which as been marked deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS

# You can also make your code fail to compile if you use deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0

# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target


#INCLUDEPATH += . http/client http utils base
